import numpy as np
S, K, r, v, q, T, n = 41.0, 40.0, 0.08, 0.30, 0.0, 1.0, 1.0
h = T / n
u = np.exp((r - q)*h + v*np.sqrt(h))
d = np.exp((r - q)*h - v*np.sqrt(h))
u, d(np.float64(1.4622845894342245), np.float64(0.8025187979624785))
2025-02-18
\[ rK > \delta S \]
\[ S > \frac{rK}{\delta} \]
NB: in the special case when \(r = \delta\) and \(\sigma = 0\), any ITM option should be exercised immediately
When volatility is positive, the implicit insurance has value that varies with time to expiration
A risk-neutral investor is indifferent between a sure thing and a risky bet with an expected payoff equal to the value of the sure thing
\(p^{\ast}\) is the risk-neutral probability that the stock price will go up
The option pricing formula can be said to price options as if investors are risk-neutral
Note that we are not assuming that investors are actually risk-neutral, and that risky assets are actually expected to earn the risk-free rate of return
Is option pricing consistent with standard discounted cash flow calculations?
Yes! However, discounted cash flow is not used in practice to price options
This is because it is necessary to compute the option price in order to compute the correct discount rate
Suppose that the continuously compounded expected return on the stock is \(\alpha\) and that the stock does not pay dividends
If \(p\) is the true probability of the stock going up, \(p\) must be consistent with \(u, d\), and \(\alpha\)
\[ puS + (1-p)dS = e^{\alpha h} S \]
\[ p = \frac{e^{\alpha h} - d}{u - d} \]
\[ pC_{u} + (1-p)C_{d} = \frac{e^{\alpha h} - d}{u - d}C_{u} + \frac{u - e^{\alpha h}}{u - d}C_{d} \]
Denote the appropriate per-period discount rate for the option as \(\gamma\)
Since an option is equivalent to holding a portfolio consisting of \(\Delta\) shares of stock and \(B\) bonds, the expected return on this portfolio is
\[ e^{\gamma h} = \frac{S \Delta}{S \Delta + B} e^{\alpha h} + \frac{B}{S \Delta + B} e^{r h} \]
\[ C = e^{-\gamma h} \left[\frac{e^{\alpha h} - d}{u - d} C_{u} + \frac{u - e^{\alpha h}}{u - d} C_{d} \right] \]
It turns out that this gives us the same option price as performing the risk-neutral calculation
Note that it does not matter whether we have the “correct” value of \(\alpha\) to start with
Any consistent pair of \(\alpha\) and \(\gamma\) will give the same option price
Risk-neutral pricing is valuable because setting \(\alpha = r\) results in the simplest pricing procedure.
Let \(\alpha = 15\%\) per annum (just pulled out of your finger!)
Let \(S = \$41.0\), \(K = \$40.0\), \(r = 8\%\) per annum, \(\sigma = 30\%\) per annum, \(\delta = 0\), and \(T = 1\) year
The “true” or “physical” probability is then:
The option payoffs at expiry are:
The expected option payoff at expiry under the physical density is:
Q: But how to get its present value? We cannot use \(r\)!
The option weighted-average cost of capital (or risky discount rate):
(np.float64(0.7376478738781428), np.float64(-22.404982402058376))
So now we can compute the portfolio weights:
So with \(\gamma\) in hand, we can now take the present value:
NB: This is the same answer we got with both the no-arbitrage and risk-neutral forms of the model
The usefulness of the binomial pricing model hinges on the binomial tree providing a reasonable representation of the stock price distribution
The binomial tree approximates a lognormal distribution
It is sometimes said that stock prices follow a random walk
Imagine that we flip a coin repeatedly
Let the random variable \(Y\) denote the outcome of the flip
If the coin lands displaying a head, \(Y = 1\); otherwise, \(Y = -1\)
If the probability of a head is \(50\%\), we say the coin is fair
After \(n\) flips, with the \(i^{\text{th}}\) flip denoted \(Y_{i}\), the cumulative total, \(Z_{n}\), is
\[ Z_{n} = \sum_{i=1}^{n} Y_{i} \]
\[ Z_{n} - Z_{n-1} = Y_{n} \\ \]
\[ \begin{align} \text{Heads:} \quad & Z_{n} - Z_{n-1} = +1 \\ \text{Tails:} \quad & Z_{n} - Z_{n-1} = -1 \end{align} \]
The idea that asset prices should follow a random walk was articulated in Samuelson (1965)
In efficient markets, an asset price should reflect all available information. In response to new information the price is equally likely to move up or down, as with the coin flip
The price after a period of time is the initial price plus the cumulative up and down movements due to informational surprises
The above description of a random walk is not a satisfactory description of stock price movements. There are at least three problems with this model
If by chance we get enough cumulative down movements, the stock price will become negative
The magnitude of the move ($1) should depend upon how quickly the coin flips occur and the level of the stock price
The stock, on average, should have a positive return. The random walk model taken literally does not permit this
The binomial model is a variant of the random walk model that solves all of these problems at once
\[ S_{t+h} = S_{t} e^{(r - \delta)h \pm \sigma\sqrt{h}} \]
\[ \ln\left(S_{t+h} / S_{t}\right) = (r - \delta)h \pm \sigma\sqrt{h} \quad\quad \text{(11.11)} \]
Since \(\ln\left(S_{t+k} / S_{t}\right)\) is the continuously compounded return from \(t\) to \(t+h\), the binomial model is simply a particular way to model the continuously compounded return
That return has two parts:
Equation (11.11) solves the three problems in the random walk
The stock price cannot become negative
As \(h\) gets smaller, up and down moves get smaller
There is a \((r-\delta) h\) term, and we can choose the probability of an up move, so we can guarantee that the expected change in the stock price is positive
The binomial tree approximates a lognormal distribution, which is commonly used to model stock prices
The lognormal distribution is the probability distribution that arises from the assumption that continuously compounded returns on the stock are normally distributed
With the lognormal distribution, the stock price is positive, and the distribution is skewed to the right, that is, there is a chance that extremely high stock prices will occur